<template>

    <el-dialog
            top="20px"
            :title="defaultValue.title"
            :visible="tableConfig.show"
            @close="tableConfig.show = false"
            :show-close="tableConfig.showClose"
            :destroy-on-close="tableConfig.destroyOnClose"
            width="1100px">


        <el-row style="">
            <el-col :span="24">
                <el-descriptions class="margin-top" title=""  :column="2" :size="size" :contentStyle="CS" :label-style="LS" border>

                    <el-descriptions-item label="文件访问地址">{{obj.url}}</el-descriptions-item>
                    <el-descriptions-item label="文件大小">{{obj.sizeCh}}</el-descriptions-item>
                    <el-descriptions-item label="隶属用户">{{obj.userName}}</el-descriptions-item>
                    <el-descriptions-item label="是否临时文件">
                      <el-tag type="danger" size="mini" v-if="obj.tempFile === 0">临时文件</el-tag>
                      <el-tag type="success" size="mini" v-else-if="obj.tempFile === 1">生产</el-tag>
                      <el-tag type="info" size="mini" v-else-if="obj.tempFile === 2">生产[删除]</el-tag>
                    </el-descriptions-item>
                    <el-descriptions-item label="删除文件时间">{{obj.delTime}}</el-descriptions-item>
                    <el-descriptions-item label="文件名称">{{obj.filename}}</el-descriptions-item>
                    <el-descriptions-item label="原始文件名">{{obj.originalFilename}}</el-descriptions-item>
                    <el-descriptions-item label="基础存储路径">{{obj.basePath}}</el-descriptions-item>
                    <el-descriptions-item label="存储路径,相对路径">{{obj.path}}</el-descriptions-item>
                    <el-descriptions-item label="文件扩展名">{{obj.ext}}</el-descriptions-item>
                    <el-descriptions-item label="MIME类型">{{obj.contentType}}</el-descriptions-item>
                    <el-descriptions-item label="存储平台">{{obj.platform}}</el-descriptions-item>
                    <el-descriptions-item label="文件所属对象id">{{obj.objectId}}</el-descriptions-item>
                    <el-descriptions-item label="文件所属对象类型">{{obj.objectType}}</el-descriptions-item>
                    <el-descriptions-item label="文件元数据">{{obj.metadata}}</el-descriptions-item>
                    <el-descriptions-item label="文件用户元数据">{{obj.userMetadata}}</el-descriptions-item>
                    <el-descriptions-item label="缩略图元数据">{{obj.thMetadata}}</el-descriptions-item>
                    <el-descriptions-item label="缩略图用户元数据">{{obj.thUserMetadata}}</el-descriptions-item>
                    <el-descriptions-item label="附加属性">{{obj.attr}}</el-descriptions-item>
                    <el-descriptions-item label="文件ACL">{{obj.fileAcl}}</el-descriptions-item>
                    <el-descriptions-item label="缩略图文件ACL">{{obj.thFileAcl}}</el-descriptions-item>
                    <el-descriptions-item label="哈希信息">{{obj.hashInfo}}</el-descriptions-item>
                    <el-descriptions-item label="上传ID，仅在手动分片上传时使用">{{obj.uploadId}}</el-descriptions-item>
                    <el-descriptions-item label="上传状态(分片)">{{obj.uploadStatus}}</el-descriptions-item>
                    <el-descriptions-item label="创建时间">{{obj.createTime}}</el-descriptions-item>
                </el-descriptions>
            </el-col>
        </el-row>



        <span slot="footer" class="dialog-footer">
            <el-button plain type="primary" @click="tableConfig.show = false">关闭</el-button>
        </span>

    </el-dialog>

</template>

<script>

import {getFullDate, getFullTime} from "@/utils/utils";

export default {
  name: "OpsDromaraFileStorageDetailed",
  data(){
    return {
      // 默认值，进入页面后的值
      defaultValue: {
        // 弹出框标题
        title: '详情',
      },
      // 表格的默认值
      tableConfig: {
        // 关闭时销毁 Dialog 中的元素
        destroyOnClose: true,
        // 弹出框是否打开
        show: false,
        // 是否显示关闭按钮
        showClose: true,
      },
      // 列表的尺寸
      size: 'small',
      // tag的大小
      mini: 'mini',
      // tag 的大小
      tagSize: 'small',
      // 展示的数据
      obj: {
        id: null,
        url: null,
        size: null,
        userId: null,
        tempFile: null,
        delTime: null,
        filename: null,
        originalFilename: null,
        basePath: null,
        path: null,
        ext: null,
        contentType: null,
        platform: null,
        thUrl: null,
        thFilename: null,
        thSize: null,
        thContentType: null,
        objectId: null,
        objectType: null,
        metadata: null,
        userMetadata: null,
        thMetadata: null,
        thUserMetadata: null,
        attr: null,
        fileAcl: null,
        thFileAcl: null,
        hashInfo: null,
        uploadId: null,
        uploadStatus: null,
        createTime: null,
      },
      // 描述列表的css
      CS: {
        // 'text-align': 'center',  //文本居中
        'min-width': '250px',   //最小宽度
        'word-break': 'break-all'  //过长时自动换行
      },
      // 描述列表的css
      LS: {
        // 'color': '#000',
        // 'text-align': 'center',
        'font-weight': '600',
        // 'height': '40px',
        // 'background-color': 'rgba(255, 97, 2, 0.1)',
        'min-width': '110px',
        'word-break': 'keep-all'
      },
    }
  },
  methods: {
    /**
     * 打开弹出框
     * @param obj 人员信息
     */
    init(obj){
      this.obj = obj
      this.tableConfig.show = true
    },
    /**
     * 转换时间戳为时间格式
     */
    getTime(item){
      return getFullTime(item)
    },
    /**
     * 时间转日期
     * @param item 要转换的时间戳
     * @return {string}
     */
    getFullDate(item){
      return getFullDate(item)
    },
  },
}
</script>

<style scoped>

</style>


